package cn.bug.greenflag.mapper;

import cn.bug.greenflag.pojo.vo.ManufacturerInfoVO;
import cn.bug.greenflag.pojo.entity.ManufacturerInfo;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 处理厂商信息的DAO
 * @author FT
 * @version 1.01
 * */
@Repository
public interface ManufacturerInfoMapper {
    /**
     * 处理添加厂商信息的DAO
     * @return 添加的厂商信息
     * */
    int insert(ManufacturerInfo manufacturerInfo);
    /**
     * 处理根据id删除厂商信息的DAO
     * @param id 需要删除的厂商id
     * @return 受影响的行数
     * */
    int deleteById(Long id);
    /**
     * 处理根据id修改厂商信息的DAO
     * @param manufacturerInfo 必须封装被修改的厂商信息的id，及需要修改的字段的新的值
     * @return  受影响的行数
     * */
    int updateById(ManufacturerInfo manufacturerInfo);
    /**
     * 通过姓名查询厂商所有的信息
     * @param name 需要查询的厂商名字
     * @return 受影响的行数
     * */
    int countByName(String name);
    /**
     * 通过电话查询厂商所有的信息
     * @param phone 需要查询的厂商电话
     * @return 受影响的行数
     * */
    int countByPhone(String phone);
    /**
     * 通过地址查询厂商所有的信息
     * @param address 需要查询的厂商地址
     * @return 受影响的行数
     * */
    int countByAddress(String address);
    /**
     * 根据 id查询厂商信息
     * @param id 需要查询的id
     * @return 返回厂商信息
     * */
    ManufacturerInfoVO getStandardById(Long id);
    /**
     *查询厂家列表
     * @return 返回厂商信息列表
     * */
    List<ManufacturerInfoVO> selectList();
}
